home *** CD-ROM | disk | FTP | other *** search
- /*************************************************************************************
- #
- # Proto.h
- #
- # This file contains the prototypes for the apps procs and funcs
- #
- # Author(s): Michael Marinkovich
- # Apple Developer Technical Support
- # marink@apple.com
- #
- # Modification History:
- #
- # 4/3/96 MWM Initial coding
- #
- # Copyright © 1992-96 Apple Computer, Inc., All Rights Reserved
- #
- #
- # You may incorporate this sample code into your applications without
- # restriction, though the sample code has been provided "AS IS" and the
- # responsibility for its operation is 100% yours. However, what you are
- # not permitted to do is to redistribute the source as "DSC Sample Code"
- # after having made changes. If you're going to re-distribute the source,
- # we require that you make it clear in the source that the code was
- # descended from Apple Sample Code, but that you've made changes.
- #
- *************************************************************************************/
-
- #include <Displays.h>
- #include <ImageCompression.h>
-
- #include "ScIntf.h"
-
-
- //----------------------------------------------------------------------
- //
- // Scanner
- //
- //----------------------------------------------------------------------
-
- OSErr DoNewScan(CGrafPtr *dstPort);
-
- OSErr DoScan(CGrafPtr dstPort, ScStdFeaturesRec scannerInfo,
- UserSettingsPtr userSettings, Rect scanRect);
-
- OSErr GetInputMethods(Boolean *ADF, Boolean *TPU, ScTPUADFInfoPtr TPUADFInfo);
-
- OSErr GetScannerInfo(ScStdFeaturesRec *scannerInfo, ScResPtr *lineArtRes,
- ScResPtr *halfToneRes, ScResPtr *grayScaleRes,
- ScResPtr *biLevelColorRes, ScResPtr *fullColorRes,
- ScHalfTonePtr *halfToneNames);
-
- OSErr SetupScan(short scanRef, ScStdFeaturesRec scannerInfo,
- UserSettingsPtr userSettings, Rect scanRect,
- ScScanAreaRec *scanInfo);
-
- OSErr ScanImage(short scanRef, CGrafPtr dstPort,
- ScStdFeaturesRec scannerInfo, ScAreaRec scanParams);
-
-
- //----------------------------------------------------------------------
- //
- // ScanDialog
- //
- //----------------------------------------------------------------------
-
- void SetupAndScan(void);
-
- OSErr GetUserScanInfo(CGrafPtr *dstPort, ScStdFeaturesRec *scannerInfo,
- ScResPtr lineArtRes, ScResPtr halfToneRes, ScResPtr grayScaleRes,
- ScResPtr biLevelColorRes, ScResPtr fullColorRes,
- ScHalfTonePtr halfToneNames, UserSettingsPtr userSettings);
-
- OSErr AdjustScanDialogItems(DialogRef dialog, ScStdFeaturesRec scannerInfo,
- ScResPtr lineArtRes, ScResPtr halfToneRes,
- ScResPtr grayScaleRes, ScResPtr biLevelColorRes,
- ScResPtr fullColorRes, ScHalfTonePtr halfToneNames);
-
- long GetCompModeResolution(short compMode, short item, ScResPtr lineArtRes,
- ScResPtr halfToneRes, ScResPtr grayScaleRes,
- ScResPtr biLevelColorRes, ScResPtr fullColorRes);
-
- OSErr GetUserHalfTone(short *selection, ScHalfTonePtr halfToneNames,
- ScStdFeaturesRec scannerInfo);
-
- OSErr AdjustHalfToneItems(DialogRef dialog, ScHalfTonePtr halfToneNames,
- ScStdFeaturesRec scannerInfo);
-
- OSErr GetUserTPUSettings(short *TPUFilm, short *TPUVendor);
-
- pascal Boolean StdDialogEventFilter(DialogPtr dialog, EventRecord *event, short *itemHit);
-
- void SetRadioValue(DialogRef dialog, short whichItem, short value);
-
- void SetNotRadioValue(DialogRef dialog, short whichItem);
-
-
- //----------------------------------------------------------------------
- //
- // Aevt
- //
- //----------------------------------------------------------------------
-
- OSErr AEInit(void);
- pascal OSErr DoAEOpenApp(AppleEvent *event,AppleEvent reply,long refCon);
- pascal OSErr DoAEQuitApp(AppleEvent *event,AppleEvent reply,long refCon);
- pascal OSErr DoAEOpenDoc(AppleEvent *event,AppleEvent reply,long refCon);
- pascal OSErr DoAEPrintDoc(AppleEvent *event,AppleEvent reply,long refCon);
- OSErr GotAEParams(AppleEvent *appleEvent);
-
-
- //----------------------------------------------------------------------
- //
- // Initialize
- //
- //----------------------------------------------------------------------
-
- OSErr Initialize(void);
- void ToolBoxInit(void);
- void CheckEnvironment(void);
- OSErr InitApp(void);
- void MenuSetup(void);
-
-
- //----------------------------------------------------------------------
- //
- // Main
- //
- //----------------------------------------------------------------------
-
-
- void HandleError(short errNo,Boolean fatal);
- void HandleAlert(short alertID);
-
-
- //----------------------------------------------------------------------
- //
- // Events
- //
- //----------------------------------------------------------------------
-
- void EventLoop(void);
- short MyGetSleep(void);
- void CustomWindowEvent(short eventType,WindowRef window,void *refCon);
- void DoEvent(EventRecord *event);
- void DoIdle(WindowRef window, void *refCon);
- void HandleMouseDown(EventRecord *event);
- void HandleMenuChoice(WindowRef window, void *refCon);
- void HandleContentClick(WindowRef window, void *refCon);
- void HandleZoomClick(WindowRef window, void *refCon);
- void HandleGrow(WindowRef window, void *refCon);
- void UpdateWindow(WindowRef window);
- void DoActivate(WindowRef window, void *refCon);
-
-
- //----------------------------------------------------------------------
- //
- // Windows
- //
- //----------------------------------------------------------------------
-
- WindowPtr CreateWindow(short resID, void *wStorage, Rect *bounds, Str255 title,
- Boolean visible, short procID,short kind, WindowRef behind,
- Boolean goAwayFlag,long refCon);
- OSErr RemoveWindow(WindowRef window);
- void NewWindowTitle(WindowRef window, Str255 str);
- OSErr InitWindowProcs(WindowRef window, short windKind);
- void DrawWindow(WindowRef window, void *refCon);
- void DrawAboutWindow(WindowRef window, void *refCon);
- void DoResizeWindow (WindowRef window);
- void ActivateWindow(WindowRef window);
- void DeactivateWindow(WindowRef window);
- short GetWindKind(WindowRef window);
- Boolean GetIsAppWindow(WindowRef window);
- Boolean GetIsAboutWindow(WindowRef window);
- RgnHandle GetContentRegion(WindowRef window);
- RgnHandle GetStructureRegion(WindowRef window);
-
-
- //----------------------------------------------------------------------
- //
- // Displays
- //
- //----------------------------------------------------------------------
-
- OSErr InstallDMNotification(void);
- OSErr InstallAEDMNotification(void);
- OSErr RemoveDMNotification(void);
- OSErr InstallDMNotificationAE(void);
- pascal OSErr WorldChangedProc(AppleEvent *event);
- pascal OSErr DoAEDisplayUpdate(AppleEvent event,AppleEvent reply,long refCon);
- OSErr HandleNotification(AppleEvent *event);
- OSErr HandleDeviceChange(DisplayIDType displayID, Rect *newRect);
- Boolean OutOfBoundsRect(GDHandle gd, WindowRef window, Rect screenRect);
- void MoveInbounds(WindowRef window, GDHandle gd, Rect screenRect);
- void ResizeInbounds(WindowRef window, GDHandle gd, Rect screenRect);
- GDHandle GetGreatestDevice(WindowRef window);
- void GetWindowRect(WindowRef window, Rect *windRect);
- void ResetStdState(WindowRef window);
-
-
- //----------------------------------------------------------------------
- //
- // Scrolls
- //
- //----------------------------------------------------------------------
-
- void InstallScrollBars(WindowRef window, DocHnd doc);
- void AdjustScrollValues(WindowRef window);
- void AdjustScrollbars(WindowRef window, Boolean resize);
- pascal void ScrollActionProc(ControlRef control, short part);
- void ScrollPict(short hAmount,short vAmount,WindowRef window);
- void MyScrollPicture(WindowRef window, short hs, short vs);
- void GetContRect(WindowRef window,Rect *contRect);
-
-
- //----------------------------------------------------------------------
- //
- // JPEG
- //
- //----------------------------------------------------------------------
-
- CGrafPtr OpenJPEGFile(FSSpec spec, OSErr *theErr);
- CGrafPtr ConvertJPEG(Handle image);
- OSErr GetJPEGDescription(Handle image, ImageDescriptionHandle desc, Rect *bounds);
- GWorldPtr NewJPEGWorld(short depth, Rect theRect);
- OSErr SaveJPEGFile(StandardFileReply reply, WindowRef window);
- pascal OSErr DataUnloadProc(Ptr data, long bytesNeeded, long refCon);
-
-
- //----------------------------------------------------------------------
- //
- // PICT
- //
- //----------------------------------------------------------------------
-
- OSErr OpenPictFile(FSSpec *spec, GWorldPtr *theWorld);
- OSErr SavePictFile(FSSpec *spec, GWorldPtr theWorld);
- OSErr ReadPICTFile(FSSpec *spec, PicHandle *thePict);
- OSErr WritePICTFile(FSSpec *spec, PicHandle thePict);
- OSErr PictToWorld(PicHandle thePict, GWorldPtr *theWorld);
- OSErr WorldToPict(GWorldPtr theWorld, PicHandle *thePict);
-
-
- //----------------------------------------------------------------------
- //
- // Utils
- //
- //----------------------------------------------------------------------
-
- void DoOpenNew(void);
- OSErr DoSaveImage(WindowRef window);
- pascal Boolean CustomFileDlogFilter(CInfoPBPtr theParamBlok, Ptr theDataPtr);
- pascal short CustomGetFileHook(short item, DialogPtr theDlogPtr, void *theData);
- pascal short CustomPutFileHook(short item, DialogPtr theDlogPtr, void *theData);
- void ZeroRect(Rect *r);
- void pstrcpy(StringPtr dst, StringPtr src);
- void pstrcat(StringPtr dst, StringPtr src);